#ifndef BOUNCE_PATH_H_
#define BOUNCE_PATH_H_

// INCLUDES //
#include "path.h"
//////////////

/**
* A path that bounces when it hits something.
* 
* @author dfoelber
**/
class BouncePath : public Path
{
public:
	/**
	* Default constructor.
	**/
	BouncePath();
	
	/**
	* Lets the path know that time has passed and to move accordingly.
	* 
	* Overridden from Path.
	* 
	* @param ms The time passed since last called
	**/
	virtual void TimePassed( int ms );
	
	/**
	* Input that can be used by the path.
	* 
	* Overridden from Path.
	* 
	* @param event The event
	* @return If the event was consumed
	**/
	virtual bool Input( SDL_Event event );
	
	/**
	* The path has collided with another object.
	* 
	* Overridden from Path.
	* 
	* Note: This function needs to be implemented to use this path.
	* 
	* @param side The side of the path that collided
	* @param other The other area that this path collided with
	**/
	virtual void Collision( int side, Area* other );
};

#endif /*BOUNCE_PATH_H_*/
